Evolution of computer technology increases user demands on computer software. Moreover, a user usually has to separately install a plurality of desired software products to a target hardware device so as to completely implement a required system configuration. Such situation can also exist that a plurality of software products to be installed has a mutual dependency relationship there between. For example, software product 1 is dependent on software product 2 (namely, software product 1 can only be correctly installed after software product 2 is correctly installed), while software product 2 is further dependent on software product 3, and so forth. At this point, the installation sequence of software products has to be determined empirically by a technical engineer, for example, first installing software product 3, then installing software product 2, and finally installing software product 1.
It is a quite time-consuming and complicated work to implement functional configuration by such manual installation of software, because the technical engineer must first determine an installation sequence of respective software products, and additionally, after respective installations are installed, it is also required to configure the software according to corresponding installation configuration parameters of the software. In other words, for such operation of manual installation of software, the technical engineer must have rich experience for correctly configuring each installed software product. Additionally, a great amount of repetitive manual operation is required for performing installation to multiple devices. Therefore, the prior art has proposed solutions which can publish software or applications in a manner of virtual images, i.e., instantiating a pre-configured virtual image to replace fussy human labor in manual installation and configuration of a software product.
Methods for instantiating a pre-configured virtual image already exist in the prior art. Although the repetitive human labor issue can be resolved to a certain extent by these methods, the difficulty being confronted, currently, is that virtual image configuration and instantiation can only be performed to software products with a simple dependency, while it is impossible to perform instantiation operation when a virtual solution relates to multiple virtual machines and software products on the multiple virtual machines further have complicated dependencies.
The instantiating process after deploying a virtual image is called activating the virtual image. In a practical application environment, activation of multiple virtual machines in a virtual solution frequently occurs, and a virtual machine-level cyclic dependency can also exist between various activation items in the multiple virtual machines.